/*
 * Título: gestHora. Aplicación web de gestión de horarios para conservatorios.
 * Alumnos:
 * - Javier Pardo Muñoz. I.T. Informática de Gestión
 * - Antonio Prior Cazorla. I.T. Informática de Gestión
 * Director: Dr. José Raúl Romero Salguero.
 *     
 *  Copyright (C) 2013 Javier Pardo Muñoz / Antonio Prior Cazorla
 *
 *  This program is free software: you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation, either version 3 of the License, or
 *  (at your option) any later version.

 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
package es.uco.gesthora.business.algoritmo;

import java.util.Hashtable;
import java.util.Vector;

public class SolicitudGrupo {

    int numeroGrupo;
    int prioridad;
    Vector<HorarioSolicitud> vHorario;

    public SolicitudGrupo() {
        numeroGrupo = 0;
        this.vHorario = new Vector();
    }

    public SolicitudGrupo(SolicitudGrupo solicitud) {
        numeroGrupo = solicitud.getNumeroGrupo();
        prioridad = solicitud.getPrioridad();
        this.vHorario = solicitud.getVHorario();
    }

    public SolicitudGrupo(int numeroGrupo) {
        this.numeroGrupo = numeroGrupo;
        this.prioridad = 0;
        this.vHorario = new Vector();
    }

    public SolicitudGrupo(int numeroGrupo, int prioridad) {
        this.numeroGrupo = numeroGrupo;
        this.prioridad = prioridad;
        this.vHorario = new Vector();
    }

    public SolicitudGrupo(int numeroGrupo, int prioridad, Vector<HorarioSolicitud> vHorario) {
        this.numeroGrupo = numeroGrupo;
        this.prioridad = prioridad;
        this.vHorario = vHorario;
    }

    public void setNumeroGrupo(int numeroGrupo) {
        this.numeroGrupo = numeroGrupo;
    }

    public void setPrioridad(int prioridad) {
        this.prioridad = prioridad;
    }

    public void setVHashtableHorario(Vector<Hashtable> vhHorario) {
        vHorario = new Vector();
        for (int i = 0; i < vhHorario.size(); i++) {
            vHorario.addElement(new HorarioSolicitud(Integer.parseInt(vhHorario.get(i).get("idHorario").toString()), Integer.parseInt(vhHorario.get(i).get("idDia").toString()), Integer.parseInt(vhHorario.get(i).get("idHora").toString()), Integer.parseInt(vhHorario.get(i).get("duracion").toString())));
        }
    }

    public void setVHorario(Vector<HorarioSolicitud> vHorario) {
        this.vHorario = vHorario;
    }

    public int getNumeroGrupo() {
        return numeroGrupo;
    }

    public int getPrioridad() {
        return prioridad;
    }

    public Vector<HorarioSolicitud> getVHorario() {
        return vHorario;
    }

    public String vHorarioToString() {
        String cadena = "";
        for (int i = 0; i < getVHorario().size(); i++) {
            cadena += getVHorario().get(i).getIdHorario() + ", ";
        }
        return cadena;
    }
}
